
var express = require('express');
var fs = require('fs');
var util = require('util');
var app = express();

app.use(express.bodyParser());

app.get('/index.html', function(req, res){
	res.sendfile(__dirname + "/bodyParser_index.html");
});

app.post('/index.html', function(req, res){

	console.log(util.inspect(req.files, {depth:1}));
	// 在使用了bodyParser中间件后，代表客户端请求的http.IncomingMessage对象就具有了一个file属性，该属性值为一个对象，
	// console.log(util.inspect(req.files, {depth:1}));
	// 查看files对象中的内容
	/*
	req.files对象中具有一个myfile子对象，为客户端脚本代码中被追加到FormData对象中的数据的键名
	myfile子对象中包含了被上传文件的各种信息
	path: 被上传文件的临时路径
	name: 被上传文件的文件名，可以为中文名
	{
		myfile: {
			fieldName: 'myfile',
			originalFilename: 'com-star-sprite-blue.png',
			path: 'C:\\Users\\kathyxxu\\AppData\\Local\\Temp\\19820-1tp6pgh.png',
			headers: [Object],
			ws: [Object],
			size: 1620,
			name: 'com-star-sprite-blue.png',
			type: 'image/png'
		}
	}
	*/
	var file = req.files.myfile;
	fs.readFile(file.path, function(err, data){
		if(err)
			res.send('读文件操作失败');
		else{
			fs.writeFile(file.name, data, function(err){
				if(err)
					res.send('读文件操作失败');
				else
					res.send('文件上传成功');	
			});
		}
	});
});

app.listen(1337, 'localhost');